-
-
Notifications
You must be signed in to change notification settings - Fork 617
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add TCC support #2068
base: master
Are you sure you want to change the base?
Add TCC support #2068
Conversation
I like TCC for testing (smaller) programs due to it's incredible speed, so that is why I made this PR FYI: This is using maintained fork of TCC |
-- Returns list of C preprocessor flags for a configuration. | ||
-- | ||
|
||
tcc.cppflags = { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Most stuff seems to be a copy of (old) gcc functions/tables.
if true, maybe do as clang and just do tcc.XXX = gcc.XXX
I said old as some stuff seems missing (standard "C17", openmp, ...)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is indeed, and while I agree that basing off of GCC could work due to similarities, it would strip out a lot more so i figured it was better to maintain a separate file. Is this okay?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If it is different, then separate fields are ok.
@@ -21,6 +21,7 @@ Remove all binaries and build scripts. | |||
Choose a C/C++ compiler, if supported by target; one of: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if supported by target
$(action).valid_tools
si checked now, So it should be added there properly.
I still need to test more options this weekend bare in mind |
The issue I'd have with adding in TCC to core is that the core team doesn't use TCC thus doesn't have the expertise to maintain it (one of the issues with the D stuff right now). Is it possible to make this a plugin/external script at least initially? |
D module seems written in modular way though. |
I'm willing to maintain it myself, I use premake for many of my projects. If I have to stand up to maintain something it shouldn't be difficult |
Agreed that it shouldn't be difficult. It's why external scripts are intentionally as pain-free as possible. We've recently had a similar discussion on a PR of NVCC into the core repository. It's a hard balance to strike with adding new exporters and toolsets, as there's only half a dozen people actively working on the repo, usually no more than 1 or 2 at a time (this doesn't count those who send in the one off PRs, for which we are extremely appreciative of). |
Would like to see @samsinsane and @starkos's thoughts on this as well. |
Hi, regardless of conflicts I would like to bump this. Any thoughts? |
I personally hold the same stance, but commentary from other maintainers would be appreciated. |
Sorry for not replying sooner, I somehow missed this along the way. I agree with @nickclark2016 on this, an external module is the way to go. |
What does this PR do?
Add's TCC support
How does this PR change Premake's behavior?
Add's TCC support
Anything else we should know?
Needs review and tests (?)
Did you check all the boxes?
closes #XXXX
in comment to auto-close issue when PR is merged)You can now support Premake on our OpenCollective. Your contributions help us spend more time responding to requests like these!
bumps #350